Entity Framework সেটআপ (Setting Up Entity Framework)

Microsoft Technologies - এন্টিটি ফ্রেমওয়র্ক (Entity Framework)
217
217

Entity Framework ব্যবহার করতে হলে প্রথমে আপনাকে আপনার প্রোজেক্টে এটি সঠিকভাবে সেটআপ করতে হবে। EF ব্যবহার করতে গিয়ে বেশ কয়েকটি পদক্ষেপ অনুসরণ করতে হয়, যার মধ্যে রয়েছে NuGet প্যাকেজ ইন্সটল করা, DbContext কনফিগারেশন করা, এবং মডেল তৈরি করা। এই গাইডে, আমরা Entity Framework সেটআপের পুরো প্রক্রিয়া বিস্তারিতভাবে আলোচনা করব।


Visual Studio তে Entity Framework ইন্সটল করা

Entity Framework ইন্সটল করার জন্য আপনাকে Visual Studio ব্যবহার করতে হবে। Visual Studio তে EF এর বিভিন্ন সংস্করণ ইনস্টল করা যায়, তবে EF Core বর্তমানে সবচেয়ে জনপ্রিয় এবং ব্যবহৃত সংস্করণ।

NuGet Package Manager দিয়ে Entity Framework ইনস্টল করা

  1. NuGet Package Manager খুলুন:
    • Visual Studio তে আপনার প্রোজেক্ট খুলুন।
    • Tools মেনু থেকে NuGet Package Manager নির্বাচন করুন এবং Manage NuGet Packages for Solution এ ক্লিক করুন।
  2. Entity Framework ইন্সটল করুন:

    • Browse ট্যাবে গিয়ে EntityFramework বা Microsoft.EntityFrameworkCore সার্চ করুন (এটি আপনার প্রোজেক্টের ধরন অনুসারে নির্বাচন করুন: EF 6 বা EF Core)।
    • প্যাকেজটি নির্বাচন করুন এবং Install বাটনে ক্লিক করুন।

    যদি আপনি EF Core ব্যবহার করতে চান, তাহলে Microsoft.EntityFrameworkCore প্যাকেজটি নির্বাচন করুন। EF 6 ব্যবহার করতে হলে EntityFramework প্যাকেজ ইনস্টল করুন।

  3. Install Confirm:
    • NuGet প্যাকেজটি ইন্সটল করার জন্য Visual Studio আপনাকে অনুমতি চাইবে। অনুমতি দিয়ে ইন্সটলেশন সম্পূর্ণ করুন।

Package Manager Console দিয়ে Entity Framework ইন্সটল করা

আপনি Package Manager Console ব্যবহার করেও Entity Framework ইনস্টল করতে পারেন:

  1. Package Manager Console খুলুন:
    • Tools > NuGet Package Manager > Package Manager Console এ যান।
  2. ইন্সটল কমান্ড চালান:
    • EF 6 এর জন্য:

      Install-Package EntityFramework
      
    • EF Core এর জন্য:

      Install-Package Microsoft.EntityFrameworkCore
      

DbContext কনফিগারেশন

Entity Framework এ DbContext হলো ডেটাবেসের সাথে যোগাযোগ করার মূল পয়েন্ট। এটি ডেটাবেসের টেবিল এবং সম্পর্কের জন্য মডেল ক্লাসসমূহকে রিপ্রেজেন্ট করে এবং ডেটাবেসের সাথে CRUD (Create, Read, Update, Delete) অপারেশন সম্পাদন করে।

  1. DbContext ক্লাস তৈরি করুন:

    • আপনার প্রোজেক্টে একটি নতুন ক্লাস তৈরি করুন যেটি DbContext ক্লাস থেকে ইনহেরিট করবে।
    public class ApplicationDbContext : DbContext
    {
        public DbSet<Product> Products { get; set; }
        public DbSet<Category> Categories { get; set; }
        
        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseSqlServer("Your_Connection_String_Here");
        }
    }
    
  2. ডেটাবেসের জন্য সংযোগ স্ট্রিং নির্ধারণ করুন:
    • OnConfiguring মেথডের মধ্যে ডেটাবেসের সংযোগ স্ট্রিং ব্যবহার করে ডেটাবেসের সাথে সংযোগ স্থাপন করুন।
    • appsettings.json ফাইলেও সংযোগ স্ট্রিং রাখতে পারেন এবং DbContext কনফিগারেশনে Dependency Injection ব্যবহার করতে পারেন।

Model তৈরি করা

Entity Framework এ মডেল তৈরি করতে, আপনাকে ক্লাস তৈরি করতে হবে যা ডেটাবেসের টেবিলের প্রতিনিধিত্ব করবে। প্রতিটি ক্লাসের জন্য একটি DbSet প্রোপার্টি তৈরি করতে হবে DbContext ক্লাসে, যা ডেটাবেসের টেবিলের সাথে সম্পর্কিত হবে।

  1. Model Class তৈরি করুন: উদাহরণস্বরূপ, যদি আপনার একটি Product টেবিল থাকে, তাহলে এর জন্য একটি ক্লাস তৈরি করুন:

    public class Product
    {
        public int ProductId { get; set; }
        public string Name { get; set; }
        public decimal Price { get; set; }
        public int CategoryId { get; set; }
        public Category Category { get; set; }
    }
    
  2. Relationship নির্ধারণ করুন: মডেল ক্লাসের মধ্যে প্রপার্টি দিয়ে সম্পর্ক (এক থেকে অনেক, বহু থেকে এক) নির্দেশ করতে পারেন। যেমন, Product ক্লাসের মধ্যে Category এর রেফারেন্স দেওয়া হয়েছে।

Entity Framework এর কনফিগারেশন

Entity Framework এ মডেল কনফিগারেশন দুটি পদ্ধতিতে করা যেতে পারে: Data Annotations এবং Fluent API

  1. Data Annotations: ডেটা অ্যানোটেশন ব্যবহার করে আপনি মডেল ক্লাসের উপর বিভিন্ন বৈশিষ্ট্য প্রয়োগ করতে পারেন, যেমন প্রপার্টি অবশ্যই পূর্ণ (Required), প্রপার্টির দৈর্ঘ্য সীমা নির্ধারণ (StringLength), ইত্যাদি।

    public class Product
    {
        [Key]
        public int ProductId { get; set; }
        
        [Required]
        [StringLength(100)]
        public string Name { get; set; }
    }
    
  2. Fluent API: Fluent API দিয়ে আপনি DbContext এর OnModelCreating মেথডে কনফিগারেশন করতে পারেন।

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Product>()
            .Property(p => p.Name)
            .IsRequired()
            .HasMaxLength(100);
    }
    

Entity Framework এর সাথে মাইগ্রেশন

Entity Framework ব্যবহার করার সময়, যখন আপনার মডেল বা ডেটাবেসের স্কিমায় পরিবর্তন হয়, তখন মাইগ্রেশন ব্যবহারের মাধ্যমে ডেটাবেস আপডেট করা হয়। মাইগ্রেশন প্রক্রিয়া শুরু করতে আপনাকে প্রথমে প্রাথমিক মাইগ্রেশন তৈরি করতে হবে এবং তারপর ডেটাবেস আপডেট করতে হবে।

  1. প্রথম মাইগ্রেশন তৈরি করুন: Package Manager Console এ নিচের কমান্ডটি ব্যবহার করুন:

    Add-Migration InitialCreate
    
  2. ডেটাবেস আপডেট করুন: মাইগ্রেশন তৈরি করার পর, ডেটাবেস আপডেট করার জন্য:

    Update-Database
    

সারাংশ

Entity Framework সেটআপ করার জন্য আপনাকে প্রথমে Visual Studio তে Entity Framework প্যাকেজ ইনস্টল করতে হবে। এর পর, একটি DbContext ক্লাস তৈরি করে ডেটাবেসের সাথে সংযোগ স্থাপন করতে হবে। মডেল ক্লাসের মাধ্যমে ডেটাবেস টেবিল রিপ্রেজেন্ট করতে হবে এবং মডেল কনফিগারেশন করতে হবে। মাইগ্রেশন সিস্টেম ব্যবহার করে ডেটাবেস স্কিমার পরিবর্তন ও আপডেট করা যায়।

common.content_added_by

Visual Studio তে Entity Framework ইন্সটল করা

238
238

Entity Framework (EF) ব্যবহার করার জন্য প্রথমে Visual Studio তে এটি ইন্সটল করতে হয়। Visual Studio একটি শক্তিশালী IDE (Integrated Development Environment) যা .NET প্রোগ্রামিং ভাষায় অ্যাপ্লিকেশন ডেভেলপমেন্টের জন্য ব্যবহৃত হয়। Entity Framework কে Visual Studio তে ইন্সটল করার জন্য কিছু পদ্ধতি রয়েছে, যেমন NuGet Package Manager ব্যবহার করে ইন্সটল করা বা Package Manager Console ব্যবহার করা। নিচে এই দুটি পদ্ধতি বিস্তারিতভাবে আলোচনা করা হলো।


NuGet Package Manager ব্যবহার করে Entity Framework ইন্সটল করা

  1. Visual Studio খুলুন
    প্রথমে Visual Studio ওপেন করুন এবং আপনার প্রোজেক্ট খুলুন বা নতুন একটি প্রোজেক্ট তৈরি করুন।
  2. NuGet Package Manager চালু করুন
    Visual Studio এর টুলবার থেকে Tools মেনুতে যান এবং সেখানে NuGet Package Manager নির্বাচন করুন, তারপর Manage NuGet Packages for Solution... অপশনটি ক্লিক করুন।
  3. Entity Framework প্যাকেজ খুঁজুন
    NuGet Package Manager উইন্ডোতে, Browse ট্যাব সিলেক্ট করুন এবং সার্চ বক্সে “EntityFramework” লিখুন। এখানে আপনি EntityFramework (EF 6) বা Microsoft.EntityFrameworkCore (EF Core) প্যাকেজ খুঁজে পাবেন, যা আপনার প্রয়োজনের উপর ভিত্তি করে নির্বাচন করতে হবে।
  4. Entity Framework ইন্সটল করুন
    আপনি যেই সংস্করণ ব্যবহার করতে চান, সেটি নির্বাচন করুন এবং Install বাটনে ক্লিক করুন। ইন্সটলেশনের জন্য আপনার অনুমতি চাইলে Accept করুন।
  5. ইন্সটলেশন সম্পন্ন হলে
    ইন্সটলেশন শেষ হলে, NuGet প্যাকেজটি আপনার প্রোজেক্টের সাথে যুক্ত হয়ে যাবে এবং আপনি Entity Framework ব্যবহার শুরু করতে পারবেন।

Package Manager Console ব্যবহার করে Entity Framework ইন্সটল করা

  1. Package Manager Console খুলুন
    Visual Studio এর টুলবার থেকে Tools মেনুতে যান এবং NuGet Package Manager থেকে Package Manager Console নির্বাচন করুন।
  2. Entity Framework প্যাকেজ ইনস্টল করুন
    Package Manager Console এ নিচের কমান্ডটি টাইপ করুন এবং এন্টার প্রেস করুন:
    • EF 6 (Legacy version):

      Install-Package EntityFramework
      
    • EF Core (New version):

      Install-Package Microsoft.EntityFrameworkCore
      
  3. ইন্সটলেশন সম্পন্ন হলে
    ইন্সটলেশন প্রক্রিয়া সম্পন্ন হলে, Package Manager Console আপনাকে একটি সফল ইনস্টলেশন বার্তা দেখাবে। এখন আপনি Entity Framework ব্যবহার শুরু করতে পারবেন।

ইন্সটলেশন পরবর্তী পদক্ষেপ

  • DbContext এবং Entity Class তৈরি
    Entity Framework ইন্সটল করার পর, আপনি আপনার অ্যাপ্লিকেশনে DbContext ক্লাস তৈরি করতে পারবেন। এটি ডেটাবেস টেবিলগুলোর সাথে ইন্টারঅ্যাক্ট করার জন্য ব্যবহৃত হবে।
  • ডেটাবেস মাইগ্রেশন
    আপনি মাইগ্রেশন ব্যবহার করে ডেটাবেস তৈরি বা আপডেট করতে পারবেন। উদাহরণস্বরূপ, Add-Migration এবং Update-Database কমান্ড ব্যবহার করতে পারেন।
  • ডেটা অপারেশন
    ইন্সটলেশনের পর আপনি Entity Framework এর মাধ্যমে Create, Read, Update, এবং Delete (CRUD) অপারেশনগুলো করতে পারবেন।

Entity Framework সংস্করণ নির্বাচন

  • EF 6: যদি আপনি পুরোনো .NET Framework অ্যাপ্লিকেশন তৈরি করেন, তবে EF 6 ইন্সটল করতে হবে। এটি SQL Server বা অন্য কোনো রিলেশনাল ডেটাবেসের সাথে কাজ করতে সক্ষম।
  • EF Core: যদি আপনি .NET Core বা .NET 5/6/7 অ্যাপ্লিকেশন তৈরি করেন, তবে EF Core ইন্সটল করা উচিত। এটি ক্রস-প্ল্যাটফর্ম এবং অধিক পারফরম্যান্স সমর্থন করে।

Visual Studio তে Entity Framework ইন্সটল করার পর আপনি সহজেই ডেটাবেস মডেল তৈরি এবং ডেটাবেস অপারেশনগুলো সম্পাদন করতে পারবেন।

common.content_added_by

NuGet Package Manager ব্যবহার করে EF ইনস্টল করা

207
207

NuGet Package Manager হল একটি টুল যা .NET প্রজেক্টে প্যাকেজ, লাইব্রেরি এবং অন্যান্য ডিপেনডেন্সি যোগ করতে ব্যবহৃত হয়। Entity Framework ইনস্টল করতে NuGet Package Manager ব্যবহার করা একটি সহজ এবং জনপ্রিয় পদ্ধতি। এই পদ্ধতিতে, আপনি আপনার প্রজেক্টে Entity Framework এর প্রয়োজনীয় প্যাকেজগুলো সহজেই ইনস্টল করতে পারবেন। এখানে EF 6 এবং EF Core ইনস্টল করার দুটি ভিন্ন পদ্ধতি তুলে ধরা হলো।


EF 6 ইনস্টল করা

EF 6 ইনস্টল করার জন্য NuGet Package Manager ব্যবহার করা হয় যেহেতু এটি .NET Framework ভিত্তিক। EF 6 এর জন্য নিম্নলিখিত পদক্ষেপগুলি অনুসরণ করতে হবে:

Visual Studio তে EF 6 ইনস্টল করার পদ্ধতি

  1. Visual Studio খুলুন: আপনার প্রজেক্ট খুলুন যেটিতে আপনি Entity Framework 6 ইনস্টল করতে চান।
  2. NuGet Package Manager খুলুন:
    • "Tools" মেনু থেকে "NuGet Package Manager" এ যান।
    • তারপর "Manage NuGet Packages for Solution..." অপশনটি নির্বাচন করুন।
  3. EF 6 প্যাকেজ খোঁজা:
    • ওপেন হওয়া NuGet প্যাকেজ ম্যানেজার উইন্ডোতে "Browse" ট্যাব নির্বাচন করুন।
    • সার্চ বক্সে "EntityFramework" লিখুন।
  4. EF 6 প্যাকেজ নির্বাচন করুন:
    • সার্চ রেজাল্ট থেকে "EntityFramework" প্যাকেজটি নির্বাচন করুন (এটি EF 6 এর জন্য হবে)।
  5. ইনস্টল করুন:
    • "Install" বাটনে ক্লিক করুন। এরপর একটি কনফার্মেশন ডায়লগ বক্স আসবে, যেখানে আপনি প্যাকেজ ইনস্টলেশনের জন্য সম্মতি প্রদান করবেন।
    • ইনস্টলেশন শেষ হলে, EF 6 আপনার প্রজেক্টে যুক্ত হয়ে যাবে।

Package Manager Console ব্যবহার করে EF 6 ইনস্টল করা

  1. Package Manager Console খুলুন:
    • "Tools" মেনু থেকে "NuGet Package Manager" → "Package Manager Console" নির্বাচন করুন।
  2. EF 6 ইনস্টল করার কমান্ড রান করুন:
    • Package Manager Console এ নিচের কমান্ডটি টাইপ করুন এবং Enter প্রেস করুন:

      Install-Package EntityFramework
      
    • এটি EF 6 প্যাকেজ ইনস্টল করবে।

EF Core ইনস্টল করা

EF Core একটি ক্রস-প্ল্যাটফর্ম ORM যা .NET Core এবং .NET 5/6/7-এর জন্য তৈরি। EF Core ইনস্টল করার পদ্ধতি EF 6 এর থেকে কিছুটা আলাদা।

Visual Studio তে EF Core ইনস্টল করার পদ্ধতি

  1. Visual Studio খুলুন: আপনার প্রজেক্ট খুলুন, যেখানে EF Core ইনস্টল করতে চান।
  2. NuGet Package Manager খুলুন:
    • "Tools" মেনু থেকে "NuGet Package Manager" → "Manage NuGet Packages for Solution..." নির্বাচন করুন।
  3. EF Core প্যাকেজ খোঁজা:
    • "Browse" ট্যাবে গিয়ে সার্চ বক্সে "Microsoft.EntityFrameworkCore" লিখুন।
  4. EF Core প্যাকেজ নির্বাচন করুন:
    • "Microsoft.EntityFrameworkCore" প্যাকেজটি নির্বাচন করুন, যা EF Core এর জন্য।
  5. ইনস্টল করুন:
    • "Install" বাটনে ক্লিক করুন এবং ইনস্টলেশন শেষ হওয়ার পর, EF Core আপনার প্রজেক্টে যুক্ত হয়ে যাবে।

Package Manager Console ব্যবহার করে EF Core ইনস্টল করা

  1. Package Manager Console খুলুন:
    • "Tools" মেনু থেকে "NuGet Package Manager" → "Package Manager Console" নির্বাচন করুন।
  2. EF Core ইনস্টল করার কমান্ড রান করুন:
    • Package Manager Console এ নিচের কমান্ডটি টাইপ করুন এবং Enter প্রেস করুন:

      Install-Package Microsoft.EntityFrameworkCore
      
    • EF Core ইনস্টলেশন প্রক্রিয়া শুরু হবে এবং সফলভাবে ইনস্টল হয়ে যাবে।

বিভিন্ন EF Core প্যাকেজ ইনস্টলেশন

EF Core এর সাথে আরও কিছু গুরুত্বপূর্ণ প্যাকেজ রয়েছে যা আপনাকে ইনস্টল করতে হতে পারে, যেমন:

  1. EF Core Tools: মাইগ্রেশন এবং ডেটাবেস আপডেটের জন্য।

    Install-Package Microsoft.EntityFrameworkCore.Tools
    
  2. EF Core SQL Server: যদি আপনি SQL Server ব্যবহার করেন তবে এই প্যাকেজটি ইনস্টল করুন।

    Install-Package Microsoft.EntityFrameworkCore.SqlServer
    
  3. EF Core SQLite: যদি আপনি SQLite ব্যবহার করেন, তাহলে এই প্যাকেজটি ইনস্টল করুন।

    Install-Package Microsoft.EntityFrameworkCore.Sqlite
    
  4. EF Core InMemory Database: পরীক্ষার জন্য ইন-মেমরি ডেটাবেস ব্যবহার করতে।

    Install-Package Microsoft.EntityFrameworkCore.InMemory
    

সারসংক্ষেপ

NuGet Package Manager ব্যবহার করে Entity Framework ইনস্টল করা একটি সহজ এবং দ্রুত পদ্ধতি। আপনি যদি EF 6 ব্যবহার করতে চান, তাহলে "EntityFramework" প্যাকেজ ইনস্টল করবেন, এবং EF Core এর জন্য "Microsoft.EntityFrameworkCore" প্যাকেজ ইনস্টল করতে হবে। Package Manager Console ব্যবহার করেও আপনি এই প্যাকেজগুলো ইনস্টল করতে পারবেন। EF Core-এর জন্য আপনি প্রয়োজনে অতিরিক্ত প্যাকেজ ইনস্টল করতে পারেন, যেমন EF Core SQL Server, SQLite বা In-Memory Database।

common.content_added_by

প্রথম Entity Framework প্রজেক্ট তৈরি

191
191

এখন আমরা শিখব কীভাবে একটি নতুন Entity Framework প্রজেক্ট তৈরি করবেন। এই টিউটোরিয়ালে আমরা Code First Approach ব্যবহার করব, যা Entity Framework এর মধ্যে সবচেয়ে জনপ্রিয় এবং সহজ পদ্ধতি। Code First Approach এ, আপনি প্রথমে আপনার Entity Class গুলি তৈরি করবেন এবং তারপর Entity Framework এর মাধ্যমে ডেটাবেস তৈরি হবে।


Visual Studio তে প্রথম Entity Framework প্রজেক্ট তৈরি করা

১. প্রজেক্ট তৈরি করা

  • Visual Studio ওপেন করুন এবং File > New > Project নির্বাচন করুন।
  • এখানে Console App (.NET Core) বা ASP.NET Core Web Application নির্বাচন করতে পারেন, আপনার প্রয়োজনে।
  • প্রজেক্ট নাম দিন, যেমন EFCoreDemo এবং সঠিক লোকেশন নির্বাচন করুন।
  • Create বাটনে ক্লিক করুন।

২. Entity Framework Core NuGet প্যাকেজ ইনস্টল করা

এখন আপনাকে Entity Framework Core ইনস্টল করতে হবে। এটি করার জন্য NuGet Package Manager ব্যবহার করতে হবে।

  • Tools > NuGet Package Manager > Manage NuGet Packages for Solution নির্বাচন করুন।
  • Browse ট্যাবে যান এবং সার্চ বক্সে Microsoft.EntityFrameworkCore লিখে সার্চ করুন।
  • Microsoft.EntityFrameworkCore প্যাকেজ নির্বাচন করুন এবং Install বাটনে ক্লিক করুন।
  • ইনস্টলেশন প্রক্রিয়া শেষ হলে, Microsoft.EntityFrameworkCore.SqlServer এবং Microsoft.EntityFrameworkCore.Tools প্যাকেজগুলোও ইনস্টল করুন যদি আপনি SQL Server ব্যবহার করতে চান।

৩. Entity Class তৈরি করা

এখন আপনাকে Entity Class তৈরি করতে হবে, যা ডেটাবেসের টেবিলের সাথে সম্পর্কিত হবে। উদাহরণস্বরূপ, একটি Student ক্লাস তৈরি করা যাক।

public class Student
{
    public int StudentId { get; set; }
    public string Name { get; set; }
    public int Age { get; set; }
}

এই ক্লাসটি আপনার Student টেবিলকে রিপ্রেজেন্ট করবে, যেখানে StudentId হল প্রাইমারি কি।

৪. DbContext ক্লাস তৈরি করা

DbContext ক্লাস Entity Framework এর একটি অত্যন্ত গুরুত্বপূর্ণ অংশ, কারণ এটি ডেটাবেসের সাথে সংযোগ স্থাপন এবং Entity গুলোর সাথে ইন্টারঅ্যাক্ট করার জন্য ব্যবহৃত হয়।

using Microsoft.EntityFrameworkCore;

public class ApplicationDbContext : DbContext
{
    public DbSet<Student> Students { get; set; }

    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseSqlServer("Server=(localdb)\\mssqllocaldb;Database=EFCoreDemoDb;Trusted_Connection=True;");
    }
}

এখানে, DbSet Students এর মাধ্যমে Student ক্লাসের একটি ডেটাবেস টেবিল তৈরি হবে এবং OnConfiguring মেথডে ডেটাবেস সংযোগের জন্য SQL Server ব্যবহার করা হয়েছে।

৫. ডেটাবেস মাইগ্রেশন তৈরি করা

এখন আপনার Entity গুলোর জন্য ডেটাবেস স্কিমা তৈরি করতে হবে। Entity Framework Core এর মাধ্যমে আপনি মাইগ্রেশন করতে পারেন।

  • Tools > NuGet Package Manager > Package Manager Console নির্বাচন করুন।
  • Package Manager Console এ নিচের কমান্ডটি লিখুন:

    Add-Migration InitialCreate
    

এটি একটি নতুন মাইগ্রেশন তৈরি করবে যেটি ডেটাবেসের প্রথম স্কিমা তৈরি করবে।

৬. ডেটাবেস আপডেট করা

এখন আপনাকে ডেটাবেস আপডেট করতে হবে যাতে Entity গুলোর জন্য টেবিল তৈরি হয়। এর জন্য নিচের কমান্ডটি চালান:

Update-Database

এই কমান্ডটি আপনার ডেটাবেসে Students টেবিল তৈরি করবে।

৭. ডেটাবেসে ডেটা যোগ করা

এখন আপনার প্রজেক্টে ডেটা যোগ করার জন্য কোড লিখুন। Program.cs ফাইলে নিচের কোডটি লিখুন:

using (var context = new ApplicationDbContext())
{
    var student = new Student { Name = "John Doe", Age = 20 };
    context.Students.Add(student);
    context.SaveChanges();
    Console.WriteLine("Student added successfully.");
}

এই কোডটি Students টেবিলের মধ্যে একটি নতুন student যুক্ত করবে।

৮. প্রজেক্ট রান করা

এখন আপনার প্রজেক্ট রান করার জন্য Ctrl + F5 চাপুন। কনসোল উইন্ডোতে আপনি "Student added successfully." বার্তা দেখতে পাবেন, যা নির্দেশ করে যে ডেটাবেসে ডেটা সফলভাবে যোগ করা হয়েছে।


সারাংশ

এটি ছিল প্রথম Entity Framework Core প্রজেক্ট তৈরি করার প্রক্রিয়া, যেখানে আমরা Code First Approach ব্যবহার করেছি। এই প্রক্রিয়ায়, প্রথমে আমরা Entity Class তৈরি করেছি, তারপর DbContext সেটআপ করে ডেটাবেস তৈরি করেছি এবং শেষে ডেটা যোগ করেছি। এই প্রক্রিয়া আপনাকে Entity Framework ব্যবহার করে ডেটাবেস পরিচালনা করতে সহায়তা করবে।

common.content_added_by

Entity Framework এর কনফিগারেশন

175
175

Entity Framework (EF) সেটআপ এবং কনফিগারেশন গুরুত্বপূর্ণ পদক্ষেপ যাতে আপনি আপনার অ্যাপ্লিকেশন এবং ডেটাবেসের মধ্যে সঠিক যোগাযোগ নিশ্চিত করতে পারেন। EF-এর কনফিগারেশন দুটি মূল স্তরে করা হয়: ডাটাবেস কনফিগারেশন এবং মডেল কনফিগারেশন। এখানে আমরা EF এর কনফিগারেশনের গুরুত্বপূর্ণ অংশগুলো আলোচনা করব।


DbContext কনফিগারেশন

Entity Framework এ, DbContext হলো মূল শ্রেণী যা আপনার ডেটাবেসের সাথে যোগাযোগের জন্য ব্যবহৃত হয়। DbContext কনফিগারেশনের মাধ্যমে আপনি ডেটাবেস সংযোগ, মডেল কনফিগারেশন এবং অন্যান্য বিভিন্ন ফিচার কনফিগার করতে পারেন।

DbContext কী এবং এটি কিভাবে কাজ করে?

DbContext হলো Entity Framework এর কেন্দ্রবিন্দু, যা আপনার ডেটাবেসের Entities (টেবিলগুলো) প্রতিনিধিত্ব করে এবং ডেটাবেসের সাথে CRUD অপারেশন পরিচালনা করে।

DbContext ব্যবহার করার জন্য আপনাকে প্রথমে একটি ক্লাস তৈরি করতে হবে যা DbContext থেকে ইনহেরিট করবে।

public class ApplicationDbContext : DbContext
{
    public DbSet<User> Users { get; set; } // Entity for Users table
    public DbSet<Order> Orders { get; set; } // Entity for Orders table

    // DbContext Configuration
    protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
    {
        optionsBuilder.UseSqlServer("your_connection_string");
    }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        // Additional model configuration can go here
    }
}
  • OnConfiguring: এই মেথডে আপনি ডেটাবেস কনফিগারেশন (যেমন, SQL Server বা অন্য ডেটাবেস) এবং সংযোগ স্ট্রিং নির্ধারণ করেন।
  • OnModelCreating: এখানে আপনি Fluent API ব্যবহার করে মডেল কনফিগারেশন করতে পারেন, যেমন কাস্টম কনফিগারেশন, রিলেশনশিপ কনফিগারেশন, এবং অন্য সেটিংস।

DbContext এর কনফিগারেশন কৌশল

1. Connection String

EF-এ সংযোগ করার জন্য connection string অপরিহার্য। এটি appsettings.json ফাইলে সংরক্ষণ করা হয় এবং DbContext এর মধ্যে সেট করা হয়।

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=.;Database=MyDatabase;Trusted_Connection=True;"
  }
}

DbContext ক্লাসে এই কনফিগারেশনটি এভাবে ব্যবহার করা হয়:

public class ApplicationDbContext : DbContext
{
    public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
        : base(options)
    {
    }
}

এখানে options ইনজেক্ট করা হয় Startup.cs-এ যেখানে DbContext কনফিগার করা হয়।

2. Fluent API কনফিগারেশন

Fluent API ব্যবহার করে আপনি মডেল কনফিগারেশন আরও বিস্তারিতভাবে করতে পারেন, যেমন প্রপার্টি কনফিগারেশন, রিলেশনশিপ কনফিগারেশন ইত্যাদি। এটি OnModelCreating মেথডের মধ্যে করা হয়।

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<User>()
                .HasKey(u => u.UserId);  // Primary Key configuration

    modelBuilder.Entity<Order>()
                .HasOne(o => o.User)    // One-to-Many relationship
                .WithMany(u => u.Orders)
                .HasForeignKey(o => o.UserId);
}
  • HasKey(): Primary Key কনফিগার করে।
  • HasOne() এবং WithMany(): One-to-Many রিলেশনশিপ কনফিগার করে।

3. Data Annotations কনফিগারেশন

Data Annotations হচ্ছে এমন একটি পদ্ধতি যেখানে আপনি মডেল ক্লাসে বিভিন্ন অ্যাট্রিবিউট ব্যবহার করে কনফিগারেশন নির্ধারণ করতে পারেন। উদাহরণস্বরূপ:

public class User
{
    [Key]
    public int UserId { get; set; }

    [Required]
    [MaxLength(100)]
    public string UserName { get; set; }

    public ICollection<Order> Orders { get; set; }
}
  • [Key]: Primary Key নির্ধারণ করে।
  • [Required]: প্রপার্টির জন্য মান নির্ধারণের বাধ্যবাধকতা।
  • [MaxLength]: প্রপার্টির সর্বোচ্চ দৈর্ঘ্য নির্ধারণ করে।

এই কনফিগারেশনটি OnModelCreating মেথডের মধ্যে করার প্রয়োজন নেই।


Entity Framework-এর অন্যান্য কনফিগারেশন পদ্ধতি

1. Dependency Injection (DI) এর মাধ্যমে DbContext কনফিগারেশন

EF Core অ্যাপ্লিকেশনগুলিতে Dependency Injection (DI) ব্যবহার করে DbContext ইনজেক্ট করা হয়। এটি সাধারণত Startup.cs বা Program.cs ফাইলে করা হয়।

public void ConfigureServices(IServiceCollection services)
{
    services.AddDbContext<ApplicationDbContext>(options =>
        options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
}

এখানে AddDbContext পদ্ধতির মাধ্যমে DbContext কনফিগার করা হয়েছে এবং UseSqlServer পদ্ধতির মাধ্যমে SQL Server ডেটাবেসের সংযোগ স্থাপন করা হয়েছে।

2. Database Initialization এবং Migrations

EF Core মাইগ্রেশন সিস্টেম ব্যবহার করে ডেটাবেসের স্কিমা আপডেট করতে পারেন। এটি ডেটাবেসের পরিবর্তনসমূহ ট্র্যাক করে এবং স্বয়ংক্রিয়ভাবে সেগুলো প্রয়োগ করে।

ডেটাবেসের প্রথম মাইগ্রেশন তৈরি করতে:

dotnet ef migrations add InitialCreate

ডেটাবেস আপডেট করতে:

dotnet ef database update

সারাংশ

Entity Framework এর কনফিগারেশন হলো একটি গুরুত্বপূর্ণ পদক্ষেপ যা ডেটাবেসের সাথে সম্পর্কিত বিভিন্ন সেটিংস নির্ধারণ করে। DbContext, Fluent API, Data Annotations, Dependency Injection, এবং Migrations ব্যবহারের মাধ্যমে আপনি আপনার Entity Framework অ্যাপ্লিকেশনকে কনফিগার করতে পারবেন। এসব কনফিগারেশন অ্যাপ্লিকেশনের পারফরম্যান্স এবং স্কেলেবিলিটি উন্নত করতে সহায়ক।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion